Release 10.1A: OpenEdge Data Management:
DataServer for Microsoft SQL Server


Compiling Progress procedures

The COMPILE statement lets you compile Progress 4GL procedures and save the compilations to disk. This speeds up your application execution time since the application does not have to recompile it every time you want to run a procedure.

To compile procedures that access an MSS data source, start up an OpenEdge session and connect to the schema holder using the schema holder’s logical database name, then use the COMPILE statement. If you change the name of the schema holder after you compile a procedure, you must connect to the renamed schema holder and recompile the procedure. For more information, see the “COMPILE Statement” reference entry in OpenEdge Development: Progress 4GL Reference .

Note: You do not have to connect to the MS SQL Server database to compile a procedure. The schema holder contains all the information that the compiler requires.

R-code

R-code is generated when a 4GL procedure is compiled. The compiled r-code is portable among machines. For example, r-code that you compile on a Sun machine can run on any other UNIX machine.

Starting with OpenEdge release 10.1A, 32-bit r-code must run on 10.1A 32-bit platforms and 64-bit r-code must run on 10.1A 64-bit platforms. You cannot run 64-bit r-code with the 32-bit product, nor can you run 32-bit r-code with the 64-bit product.

If portability between platforms is more important than 64-bit performance, you can use the 10.1A 32-bit product which can run 10.0x 32-bit and 64-bit generated r-code as well as 10.1A 32-bit generated r-code. The 10.1A 32-bit product can be installed and run on 64-bit hardware, but you will not see the performance benefits (such as very large memory) that you get with the 10.1A 64-bit product.

R-code is also not portable among windowing systems; that is, r-code compiled for a character application will not run under Windows and r-code compiled for Windows will not run under a character application.

R-code is also not portable among database management systems. The Progress 4GL generates calls that are specific to a database. For example:

See OpenEdge Deployment: Managing 4GL Applications for more details on r-code portability.

The size of r-code grows significantly when you compile procedures against an MSS data source as compared to compiling against an OpenEdge database. The r-code for a DataServer application contains as text portions of SQL statements that the DataServer passes to the data source.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095